package ipt.capitulo16;
import java.lang.*;
import java.net.*;
import java.io.*;
public class Escuchador{
	public static void main(String args[]){
		try{
			ServerSocket escucha = new ServerSocket(1112);
			int puerto = escucha.getLocalPort();
			System.out.print("Escuchador en el puerto: ");
			System.out.println(puerto);
			Socket clie = escucha.accept();
			String ordenadorEntrante = 
					clie.getInetAddress().getHostName();
			int puertoSalida = clie.getPort();
			System.out.print("Aceptada la conexion de: ");
			System.out.println(ordenadorEntrante);
			BufferedReader flujoE = new BufferedReader(
				new InputStreamReader(clie.getInputStream()));
			DataOutputStream salida = new 
				DataOutputStream(clie.getOutputStream());
			boolean finalizar = false;
			do{
				String textoEntrada = flujoE.readLine();
				System.out.print("Texto recibido: ");
				System.out.println(textoEntrada);
				if(textoEntrada.equalsIgnoreCase("fin"))
					finalizar=true;
				String textoSalida;
				textoSalida = textoEntrada.toLowerCase();
				for(int i=0;i<textoSalida.length();++i)
					salida.write((byte)textoSalida.charAt(i));
				salida.write(13);
				salida.write(10);
				salida.flush();
				System.out.print("Texto enviado: ");
				System.out.println(textoSalida);
			}while(!finalizar);
			flujoE.close();
			salida.close();
			clie.close();
			escucha.close();
		}catch(IOException e){
			System.out.println(e.getMessage());
		}
	}
}
